Research and technology have provided society with a wide variety of electronic devices. Some modern electronic devices are powerful, and can be very beneficial to those who use them. For example, portable computing devices such as personal digital assistants (PDAs) are in widespread use. Their applications include but are not limited to storing addresses and phone numbers of contacts, tracking expenses and mileage, and keeping track of appointments and schedules, etc.
Also, use of cellular and other mobile phones to perform computing functions is increasing dramatically. Such computing tasks include but are not limited to: sending and receiving messages like a pager, sending and receiving electronic mail (e-mail) like a personal computer (PC), and even accessing web sites on the Internet like a PC.
A problem arises when a user of a portable computing device needs to know with certainty the true identity of the person or device on the other end of the conversation. Another problem is when a user needs to ensure that information sent out remains secure, that is that sensitive information is not available to an unintended recipient. These problems are related. For instance, suppose one can prevent unintended listeners from obtaining information they send out, but they do not know for sure to whom they are talking. In that case, the one could be mistaken about the identity of their intended recipient, or they could be fooled by a deliberate imposter.
Digital certificates are a known approach to these problems. A digital certificate is generally considered to be an electronic document that contains information about the owner of the certificate and that is issued by a trusted third party, called a certificate authority. When properly implemented and used, digital certificates can be an effective approach to verifying the identity of some person or entity with whom you interact with only electronically. However, proper use of digital certificates present substantial challenges, particularly when used on devices with limited resources such as portable computing devices.
Digital certificates are often used in conjunction with an encryption technique known as public key encryption. Digital certificates include the public key of the owner of the certificate. Sensitive information can be encrypted by means of someone's public key, and then sent to that person without the information being readable by anyone else. Encryption alone can provide privacy, but it cannot provide authentication to protect against accidental mistaken identity or deliberate fraud.
Electronic transactions occurring today between two businesses may use digital certificates for security and privacy. As part of the transaction, one party may check with a specified Certificate Authority to determine that the other party's certificate has not been revoked. This is analogous to checking with the state driver's license agency to verify that a particular driver's license has not been revoked or reported lost. As another part of the transaction, one party will then use the public key within the now verified digital certificate to encrypt any sensitive information prior to sending it to the other party. After encryption, the information may be sent as a file, an e-mail or over a network connection.
If these steps are performed before any sensitive information is sent, then there is a very high degree of likelihood that the parties involved are genuine, not an impostor. There is also a very high degree of likelihood that even if intercepted by someone other than the parties involved, that person will not be able to decrypt the sensitive information.
While this procedure may appear to be a burden, a typical consumer or business user need not know that digital certificates even exist. Once a secure system is set up, digital certificates and public key encryption can be used without user involvement unless a potential security problem is detected. For example, the above procedure can occur without the involvement of the party who just wants to perform a secure transaction.
Many web browsers that are popular today make at least some use of digital certificates and public key encryption, often without their users being aware that these activities are occurring on their behalf. Additionally, many schemes for on line distribution of software, software updates or other downloaded information use digital certificates. Used properly, digital certificates can authenticate that information obtained on line comes from a trusted source.
It is important to check the revocation status of every digital certificate used. A digital certificate may need to be invalidated after it is issued for any of a number of reasons. A relatively common one is that the information in the certificate has changed. A revocation check on such a certificate might return a status of “updated” along with the updated certificate.
However, checking the revocation status of a certificate may be problematic. Many currently popular web browsers make at least some use of digital certificates, but some of these skip revocation checking even when the browser is run on machines with high speed network access that has little or no cost for each use of the network.
A small device with limited processing power and limited networking bandwidth can do almost everything one would usually do with a certificate except check for the certificate's revocation status. Revocation checking entails checking LDAP directories and large Certificate Revocation lists and can be a very lengthy operation with a lot of latency for slow networks. Given the high latency on most small devices (e.g., PDAs, cell phones, etc.), or the high cost of low latency on small devices, it is problematic to perform revocation checking on small devices.
A portable computing device typically has very limited resources, including limited speed of its processor, a limited amount of memory, limited battery power and limited access to computer networks—network access that is slow, expensive, only available intermittently, or all three. It may be impractical for a portable device to perform the revocation check step due to intermittent network access or the delays incurred in checking with the certificate authority, or the network usage fees for sending and receiving revocation check messages. Revocation checking may only be cost effective for large transactions, those with potentially large consequences if compromised, or situations where something seems amiss or suspicious.